﻿using Library.Core.Domain.Event;
using System;

namespace Synthesize.BaseSet.Domain.Event.Authority
{
    public class SendMessageEvent : IEvent
    {
        /// <summary>
        /// 发送消息实体
        /// </summary>
        /// <param name="title">标题</param>
        /// <param name="content">内容</param>
        /// <param name="sendUserId">发送人</param>
        /// <param name="reviceUserId">接收人</param>
        /// <param name="sendTime">发送时间</param>
        /// <param name="UserId">用户ID</param>
        /// <param name="UserName">用户名称</param>
        /// <param name="MsgCode">消息编码</param>
        public SendMessageEvent(string title, string content, Guid sendUserId, Guid reviceUserId, DateTime sendTime, string UserId, string UserName, string MsgCode)
        {
            Title = title;
            Content = content;
            SendUser = sendUserId;
            ReviceUser = reviceUserId;
            SendTime = sendTime;
            this.UserId = UserId;
            this.UserName = UserName;
            this.MsgCode = MsgCode;
        }

        /// <summary>
        /// 标题
        /// </summary>
        public string Title { get; }

        /// <summary>
        /// 内容
        /// </summary>
        public string Content { get; }

        /// <summary>
        /// 发送人
        /// </summary>
        public Guid SendUser { get; }

        /// <summary>
        /// 接收人
        /// </summary>
        public Guid ReviceUser { get; }

        /// <summary>
        /// 发送时间
        /// </summary>
        public DateTime SendTime { get; }

        /// <summary>
        /// 用户ID
        /// </summary>
        public string UserId { get; }

        /// <summary>
        /// 用户名称
        /// </summary>
        public string UserName { get; }

        /// <summary>
        /// 消息编码
        /// </summary>
        public string MsgCode { get; }
    }
}
